FSM API
API Specification EN
The FSM API supports the following endpoints:
This endpoint requires the next HTTP header
Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}POST /rest/v2/tickets
Send a intervention request to the LOOMA application
The body to put in the POST operation has the following format:
{
"ticketExternalId": "name of the ticket in the partner system",
"ticketBusinessStatus": "Looma status of the ticket",
"ticketPriority": "priority of the ticket",
"ticketType": "business type of the ticket (example : corrective maintenance)",
"problemTypeCode": "contractual domain determined by VFF",
"ticketOriginCode": "origin code of the ticket",
"ticketClient": "name of client link to a ticket",
"companyName": "name of the LOOMA environment",
"ticketSubject": "subject of the ticket",
"ticketRemarks": "remark of the ticket",
"lastActivityRemark": "technician's note of the last intervention",
"dutyFlag": boolean,
"outsideBundleFlag": boolean,
"clientPresenceFlag": boolean,
"doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
"ticketClientValidator": "email of the validator",
"workImpactUrgency": "priority in my work",
"workEnvironmentImpactUrgency": "priority in my work environment",
"siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
"siteId": "intervention site",
"contactExternalId": "contact identification",
"contactEmailAddress": "contact email adresse",
"contactFirstName": "contact first name",
"contactLastName": "contact last name",
"contactMobilePhone": "contact mobile phone",
"additionalContact": "additional contact",
"ticketEquipmentId": "ticket equipment ID",
"serviceLevel1": "category 1 service catalog",
"serviceLevel2": "category 2 service catalog",
}PATCH /rest/v2/tickets/{ticketId}
Modify a intervention request by his ID
The body to put in the PATCH operation has the following format:
{
"ticketExternalId": "name of the ticket in the partner system",
"ticketBusinessStatus": "Looma status of the ticket",
"ticketPriority": "priority of the ticket",
"ticketType": "business type of the ticket (example : corrective maintenance)",
"problemTypeCode": "contractual domain determined by VFF",
"ticketOriginCode": "origin code of the ticket",
"ticketClient": "name of client link to a ticket",
"companyName": "name of the LOOMA environment",
"ticketSubject": "subject of the ticket",
"ticketRemarks": "remark of the ticket",
"lastActivityRemark": "technician's note of the last intervention",
"dutyFlag": boolean,
"outsideBundleFlag": boolean,
"clientPresenceFlag": boolean,
"doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
"ticketClientValidator": "email of the validator",
"workImpactUrgency": "priority in my work",
"workEnvironmentImpactUrgency": "priority in my work environment",
"siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
"siteId": "intervention site",
"contactExternalId": "contact identification",
"contactEmailAddress": "contact email adresse",
"contactFirstName": "contact first name",
"contactLastName": "contact last name",
"contactMobilePhone": "contact mobile phone",
"additionalContact": "additional contact",
"ticketEquipmentId": "ticket equipment ID",
"serviceLevel1": "category 1 service catalog",
"serviceLevel2": "category 2 service catalog",
}PATCH /rest/v2/tickets
Modify a intervention request by the ticketCode/ticketExternalId
This endpoint supports the following query parameters and their combinations:
- ticketCode={ticketCode}: query parameter allowing to PATCH a request intervention by his code
- ticketExternalId={ticketExternalId}: query parameter allowing to PATCH a request intervention by the externalId
The body to put in the PATCH operation has the following format:
{
"ticketExternalId": "name of the ticket in the partner system",
"ticketBusinessStatus": "Looma status of the ticket",
"ticketPriority": "priority of the ticket",
"ticketType": "business type of the ticket (example : corrective maintenance)",
"problemTypeCode": "contractual domain determined by VFF",
"ticketOriginCode": "origin code of the ticket",
"ticketClient": "name of client link to a ticket",
"companyName": "name of the LOOMA environment",
"ticketSubject": "subject of the ticket",
"ticketRemarks": "remark of the ticket",
"lastActivityRemark": "technician's note of the last intervention",
"dutyFlag": boolean,
"outsideBundleFlag": boolean,
"clientPresenceFlag": boolean,
"doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
"ticketClientValidator": "email of the validator",
"workImpactUrgency": "priority in my work",
"workEnvironmentImpactUrgency": "priority in my work environment",
"siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
"siteId": "intervention site",
"contactExternalId": "contact identification",
"contactEmailAddress": "contact email adresse",
"contactFirstName": "contact first name",
"contactLastName": "contact last name",
"contactMobilePhone": "contact mobile phone",
"additionalContact": "additional contact",
"ticketEquipmentId": "ticket equipment ID",
"serviceLevel1": "category 1 service catalog",
"serviceLevel2": "category 2 service catalog",
}GET /rest/v2/tickets/{ticketId}
Receive a intervention request by the ID
This endpoint requires the next HTTP header
Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}
companyName : {Mandatory header parameter provided by Vinci Facilities}The payload returned by the GET operation has the following format:
{
"header": {
"apiname" : "{name of the API}",
"apiversion": "{schema version following single digit format X}",
"correlationId": "{correlationId conveyed all along the transaction}"
},
"data": [
{
"ticketExternalId": "name of the ticket in the partner system",
"ticketId": "id of internal ticket in LOOMA",
"ticketCode": "code of the internal ticket in LOOMA",
"ticketBusinessStatus": "Looma status of the ticket",
"ticketPriority": "priority of the ticket",
"ticketType": "business type of the ticket (example : corrective maintenance)",
"problemTypeCode": "contractual domain determined by VFF",
"ticketOriginCode": "origin code of the ticket",
"ticketClient": "name of client link to a ticket",
"companyName": "name of the LOOMA environment",
"ticketSubject": "subject of the ticket",
"ticketRemarks": "remark of the ticket",
"lastActivityRemark": "technician's note of the last intervention",
"dutyFlag": boolean,
"outsideBundleFlag": boolean,
"clientPresenceFlag": boolean,
"doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
"ticketClientValidator": "email of the validator",
"workImpactUrgency": "priority in my work",
"workEnvironmentImpactUrgency": "priority in my work environment",
"siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
"siteId": "intervention site",
"contactExternalId": "contact identification",
"contactEmailAddress": "contact email adresse",
"contactFirstName": "contact first name",
"contactLastName": "contact last name",
"contactMobilePhone": "contact mobile phone",
"additionalContact": "additional contact",
"ticketEquipmentId": "ticket equipment ID",
"serviceLevel1": "category 1 service catalog",
"serviceLevel2": "category 2 service catalog",
}
]GET /rest/v2/tickets/
Receive a intervention request by the ticketCode/ticketExternalId
This endpoint requires the next HTTP header
Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}
companyName : {Mandatory header parameter provided by Vinci Facilities}This endpoint supports the following query parameters and their combinations:
- ticketCode={ticketCode}: query parameter allowing to GET a request intervention by his code
- ticketExternalId={ticketExternalId}: query parameter allowing to GET a request intervention by the externalId
The payload returned by the GET operation has the following format:
{
"header": {
"apiname" : "{name of the API}",
"apiversion": "{schema version following single digit format X}",
"correlationId": "{correlationId conveyed all along the transaction}"
},
"data": [
{
"ticketExternalId": "name of the ticket in the partner system",
"ticketId": "id of internal ticket in LOOMA",
"ticketCode": "code of the internal ticket in LOOMA",
"ticketBusinessStatus": "Looma status of the ticket",
"ticketPriority": "priority of the ticket",
"ticketType": "business type of the ticket (example : corrective maintenance)",
"problemTypeCode": "contractual domain determined by VFF",
"ticketOriginCode": "origin code of the ticket",
"ticketClient": "name of client link to a ticket",
"companyName": "name of the LOOMA environment",
"ticketSubject": "subject of the ticket",
"ticketRemarks": "remark of the ticket",
"lastActivityRemark": "technician's note of the last intervention",
"dutyFlag": boolean,
"outsideBundleFlag": boolean,
"clientPresenceFlag": boolean,
"doNotStartBeforeDate": "yyyy-mm-ddThh:mm:ssZ",
"ticketClientValidator": "email of the validator",
"workImpactUrgency": "priority in my work",
"workEnvironmentImpactUrgency": "priority in my work environment",
"siteArrivalContractualDate": "yyyy-mm-ddThh:mm:ssZ",
"siteId": "intervention site",
"contactExternalId": "contact identification",
"contactEmailAddress": "contact email adresse",
"contactFirstName": "contact first name",
"contactLastName": "contact last name",
"contactMobilePhone": "contact mobile phone",
"additionalContact": "additional contact",
"ticketEquipmentId": "ticket equipment ID",
"serviceLevel1": "category 1 service catalog",
"serviceLevel2": "category 2 service catalog",
}
]POST /rest/v1/attachments
Send an attachment on a service request to the LOOMA app
The body to insert in the POST operation has the following format:
[{
"attachmentFileName": "attachmentFileName.pdf",
"ticketExternalId": "idExterne",
"attachmentType": "PDF",
"attachmentExternalId": "attachmentExternalId",
"attachmentCategory": "LOOMA-XXX",
"attachmentFileContent": "content"
}]| Tag Name | Mandatory | Type | Description |
|---|---|---|---|
| attachmentFileName | Y | Texte | Name of the attachment |
| attachmentType | Texte | attachment Type | |
| attachmentExternalId | Texte | Attachment external Id de la pièce jointe | |
| ticketExternalId | Y | Texte | Ticket External Id |
| attachmentCategory | Y | Texte | Attachment category |
| AttachementFileContent | Texte | File content (5 Mo max) |
GET /rest/v1/site-locations
Retrieve a site by its id
This endpoint requires the next HTTP header
Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}This endpoint supports the following query parameter and their combination:
- siteId={siteId}: request parameter allowing to obtain a request for a site by its id
The payload returned by the GET operation has the following format :
{
"header": {
"apiname" : "{name of the API}",
"apiversion": "{schema version following single digit format X}",
"correlationId": "{correlationId conveyed all along the transaction}"
},
"data": [
{
"siteId": "siteId",
"locationId": "locationId",
"locationNodeId": "nodeId",
"locationParentNodeId": "parentNodeId",
"locationHierarchyLevel": "locationHierarchyLevel",
"locationDescription": "Description",
"locationDesignation": "Designation",
"locationType": "Type",
"subLevels": [
{
"siteId": "siteId",
"locationId": "locationId",
"locationNodeId": "nodeId",
"locationParentNodeId": "parentNodeId",
"locationHierarchyLevel": "locationHierarchyLevel",
"locationDescription": "Description",
"locationDesignation": "Designation",
"locationType": "Type"
}
]
}
],POST /rest/v1/location-nodes
Send a localisation element present (building, floor, room) on a site
This endpoint requires the next HTTP header
Content-type: application/json
X-Conversation-Id: {Optional header parameter provided by the client}
client_id: {Mandatory header parameter provided by Dali platform}
client_secret: {Mandatory header parameter provided by Dali platform}The body to put in the POST operation has the following format :
{
"loomaTypeId": "Type",
"siteId": "XXXX/00000XX",
"superiorLocationId": "XXXX/00000XX/00X/000X",
"typeId": "LOCAL TECHNIQUE",
"locationName": "API location",
"userStatusId": "XX",
"sensitive": "true",
"scope": "ScopeName"
}| Tag name | Mandatory | Type | Description |
|---|---|---|---|
| loomaTypeId | Y | Texte | localisation type |
| siteId | Texte | Site Id | |
| superiorLocationId | Texte | Superior location Id | |
| typeId | Y | Texte | Localisation type |
| locationName | Y | Texte | Localisation name |
| userStatusId | Texte | User Status Id | |
| sensitive | Texte | Sensitive | |
| scope | Texte | Scope |